package org.springblade.modules.opcua.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.NullSerializer;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springblade.core.mp.base.BaseEntity;

/**
 * 数据模型
 *
 * @author qp
 * @version 2024-01-02
 */
@TableName("opc_target")
@Data
public class OpcTarget extends BaseEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "identifierPreview")
    private String identifierPreview;

    @ApiModelProperty(value = "opcName")
    private String opcName;

    @ApiModelProperty(value = "opcUrl")
    private String opcUrl;

    @ApiModelProperty(value = "opcIp")
    private String opcIp;

    @ApiModelProperty(value = "saveTable")
    private String saveTable;

    @ApiModelProperty(value = "saveScope")
    private String saveScope;

    @ApiModelProperty(value = "spaceIndex")
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    private Integer spaceIndex;

    @ApiModelProperty(value = "间隔时间")
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    private Integer intervalTime;

    @ApiModelProperty(value = "dbUrl")
    private String dbUrl;

    @ApiModelProperty(value = "dbDriver")
    private String dbDriver;

    @ApiModelProperty(value = "dbUsername")
    private String dbUsername;

    @ApiModelProperty(value = "dbPassword")
    private String dbPassword;


    @ApiModelProperty(value = "triggerUrl")
    private String triggerUrl;


    @ApiModelProperty(value = "remark")
    private String remark;

}